'\" te
.\"  Copyright (c) 1990, 1995 by Mortice Kern Systems Inc.  All Rights Reserved  Portions Copyright (c) 1996, Sun Microsystems, Inc.  All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH IS_LINETOUCHED 3XCURSES "Jun 5, 2002"
.SH NAME
is_linetouched, is_wintouched, touchline, touchwin, untouchwin, wtouchln \-
control window refresh
.SH SYNOPSIS
.LP
.nf
\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-I\fR /usr/xpg4/include \fB -L \fR /usr/xpg4/lib \e
\fB -R \fR /usr/xpg4/lib \fB -lcurses \fR [ \fIlibrary\fR... ]

\fBc89\fR [ \fIflag\fR... ] \fIfile\fR... \fB-lcurses\fR [ \fIlibrary\fR... ]

#include <curses.h>

\fBbool\fR \fBis_linetouched\fR(\fBWINDOW *\fR\fIwin\fR, \fBint\fR \fIline\fR);
.fi

.LP
.nf
\fBbool\fR \fBis_wintouched\fR(\fBWINDOW *\fR\fIwin\fR);
.fi

.LP
.nf
\fBint\fR \fBtouchline\fR(\fBWINDOW *\fR\fIwin\fR, \fBint\fR \fIstart\fR, \fBint\fR \fIcount\fR);
.fi

.LP
.nf
\fBint\fR \fBtouchwin\fR(\fBWINDOW *\fR\fIwin\fR);
.fi

.LP
.nf
\fBint\fR \fBuntouchwin\fR(\fBWINDOW *\fR\fIwin\fR);
.fi

.LP
.nf
\fBint\fR \fBwtouchln\fR(\fBWINDOW *\fR\fIwin\fR, \fBint\fR \fIy\fR, \fBint\fR \fIn\fR, \fBint\fR \fIchanged\fR);
.fi

.SH PARAMETERS
.sp
.ne 2
.na
\fB\fIwin\fR\fR
.ad
.RS 11n
Is a pointer to the window in which the refresh is to be controlled or
monitored.
.RE

.sp
.ne 2
.na
\fB\fBline\fR\fR
.ad
.RS 11n
Is the line to be checked for change since refresh.
.RE

.sp
.ne 2
.na
\fB\fIstart\fR\fR
.ad
.RS 11n
Is the starting line number of the portion of the window to make appear
changed.
.RE

.sp
.ne 2
.na
\fB\fIcount\fR\fR
.ad
.RS 11n
Is the number of lines in the window to mark as changed.
.RE

.sp
.ne 2
.na
\fB\fIy\fR\fR
.ad
.RS 11n
Is the starting line number of the portion of the window to make appear changed
or not changed.
.RE

.sp
.ne 2
.na
\fB\fIn\fR\fR
.ad
.RS 11n
Is the number of lines in the window to mark as changed.
.RE

.sp
.ne 2
.na
\fB\fIchanged\fR\fR
.ad
.RS 11n
Is a flag indicating whether to make lines look changed (0) or not changed (1).
.RE

.SH DESCRIPTION
.sp
.LP
The \fBtouchwin()\fR function marks the entire window as dirty. This makes it
appear to X/Open Curses as if the whole window has been changed, thus causing
the entire window to be rewritten with the next call to
\fBrefresh\fR(3XCURSES). This is sometimes necessary when using overlapping
windows; the change to one window will not be reflected in the other and, hence
will not be recorded.
.sp
.LP
The \fBtouchline()\fR function marks as dirty a portion of the window starting
at line \fIstart\fR and continuing for \fIcount\fR lines instead of the entire
window. Consequently, that portion of the window is updated with the next call
to \fBrefresh()\fR.
.sp
.LP
The \fBuntouchwin()\fR function marks all lines in the window as unchanged
since the last refresh, ensuring that it is not updated.
.sp
.LP
The \fBwtouchln()\fR function marks \fIn\fR lines starting at line \fIy\fR as
either changed (\fIchanged\fR=1) or unchanged (\fIchanged\fR=0) since the last
refresh.
.sp
.LP
To find out which lines or windows have been changed since the last refresh,
use the \fBis_linetouched()\fR and \fBis_wintouched()\fR functions,
respectively. These return \fBTRUE\fR if the specified line or window have been
changed since the last call to \fBrefresh()\fR or \fBFALSE\fR if no changes
have been made.
.SH RETURN VALUES
.sp
.LP
On success, these functions return \fBOK\fR. Otherwise, they return \fBERR\fR.
.SH ERRORS
.sp
.LP
None.
.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(7) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Standard
_
MT-Level	Unsafe
.TE

.SH SEE ALSO
.sp
.LP
.BR doupdate (3XCURSES),
.BR libcurses (3XCURSES),
.BR attributes (7),
.BR standards (7)
